Method and system for ultrasound time-of-flight measurement

ABSTRACT

A transducer system with transducer and circuitry for applying a pulse train at a single frequency to excite the transducer. The transducer is operable to receive an echo waveform in response to the pulse train. The system also comprises circuitry for determining a time of flight as between a first reference time associated with the pulse train and a second reference time associated with the echo waveform.

CROSS-REFERENCES TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No. 15/225,134, filed Aug. 1, 2016, which claims priority to and the benefit of the filing date of U.S. Provisional Patent Application No. 62/205,821, filed Aug. 17, 2015, each of which is incorporated by reference herein in its entirety.

STATEMENT REGARDING FEDERALLY SPONSORED RESEARCH OR DEVELOPMENT

Not Applicable.

BACKGROUND OF THE INVENTION

The preferred embodiments relate to ultrasonic transducers and more particularly to a method and system for ultrasound time of flight (TOF) measurement.

Ultrasound transducers are known in the art for transmitting ultrasound waves and detecting a reflection or echo of the transmitted wave. Such devices are also sometimes referred to as ultrasound or ultrasonic transducers or transceivers. Ultrasound transducers have myriad uses that produce an output or other result based on a distance determination from the operation of the transceiver, whereby the transceiver emits a series of pulses toward a target and then receives back an echo waveform of the signal off the target, and signal processing determines a distance to the target based in part on the elapsed timing between the transmitted pulses and the echo waveform. The output of such a system may be the distance determination itself, or the distance determination may be part of an additional determination or action based on the distance, such as displacement measurement, level sensing, material characterization, structure monitoring, vibration sensing, medical diagnostics, and the like. In any event, for various of these applications, precision of the distance measurement may be very important.

By way of further background, FIG. 1 illustrates a signal diagram of the operation of a typical prior art ultrasound transducer, in first transmitting a signal and then receiving an echo waveform. Specifically, at a time t₀, an excitation pulse train is applied to the transducer, which in response transmits a corresponding ultrasonic pulse train signal, where both the applied and transmitted pulse trains consist of a number of pulses, such as 5 to 20 such pulses, shown beginning therefore at time t₀ and ending at time t₁. The transmitted pulses are directed toward a target item, which reflects a signal back toward the transducer. Time passes as these signals pass along a channel or medium between the transducer and the target. This time may be referred to in the art as time of flight (TOF) and therefore occurs between times t₀ and t₂. Note also that TOF may be measured as between offset times from either or both of times t₀ and t₂. For example, rather than TOF starting at t₀ when the pulse train commences, it may be started later, such as when the pulse train completes. Similarly, rather than TOF ending at t₂ when the echo waveform commences, it may be ended later, such as when the echo waveform reaches a threshold. Additional details as to the latter are described later in this document.

At time t₂, the transducer begins to receive back an echo waveform WF₁ signal, reflected by the target, as shown by the echo waveform that begins at time t₂. Echo waveform WF₁ is generally a sinusoid that starts at or near time t₂ with a relatively low amplitude and then the amplitude continues to increase for some amount of time. While not shown in FIG. 1, the waveform WF₁ (and amplitude) will eventually decay, although for sake of the teachings in this document the decay period is not of particular relevance as signal processing relies instead on the increasing amplitude period of the echo waveform WF₁. Specifically, processing circuitry (e.g., a processor), associated with or coupled to the transducer, is operable to sample this received waveform WF₁ so as to develop a time reference from t₀ to a detected point in the waveform. This detected point is also sometimes referred to as TOF, although it occurs in the echo waveform after t₂. Further, by detecting a certain time event in the waveform, a reference is created in one pulse repetition cycle (PRC), that is, in one instance of a pulse train followed by an echo waveform, so that this reference may be compared against a similar time reference in subsequent PRCs, whereby a change in reference thereby indicates a change in distance between the transducer and the target. In any event, there are various prior art approaches for detecting this time event in the echo waveform.

FIG. 2 illustrates a signal diagram in connection with explaining one prior art approach for detecting a time reference in a received echo waveform. First in connection with FIG. 2, note that the echo waveform of FIG. 1 is received, and it is applied to a rectifier so that any negative portion of the signal is thereby converted to a positive signal, so that the entire sinusoid is at or above zero amplitude. Moreover, per one prior art approach, the waveform time reference for a PRC is determined once the amplitude (or magnitude, if not rectified) reaches a threshold THR. Thus, as shown in FIG. 2, this occurs at what is shown as a first TOF at t_(OF1), that is, where the waveform amplitude reaches THR. In this approach, therefore, the first TOF at t_(OF1) becomes a first reference that may be compared to the reference TOF for comparably-performed time detections for subsequent (or earlier) PRCs.

FIG. 3 illustrates a signal diagram in connection with explaining another prior art approach for detecting a time reference in a received echo waveform WF₁, and for sake of contrast the first TOF at t_(OF1) from FIG. 2 is also copied into FIG. 3. In FIG. 3, an envelope detector is also used to process the echo waveform, thereby creating an envelope ENV₁ signal or measure, as shown by an additional dashed line in FIG. 3. Moreover, per this prior art approach, the waveform time reference for a PRC is determined once the envelope reaches the threshold THR. Thus, in FIG. 3, this occurs at what is shown as a TOF at t_(OF2), that is, where the waveform envelope ENV₁ reaches THR. Note, however, that the envelope reaches the threshold THR at t_(OF2), which is before the actual increasing amplitude of the echo waveform does so at t_(OF1). Thus, the envelope ENV₁ has a smoothing and interpolating function as between the successive increasing amplitude signal swings of the waveform so as to give a better approximation of when the energy of the waveform exceeds the threshold THR, and may provide better detection thereof, as compared to the approach of FIG. 2.

While the envelope approach of FIG. 3 performs better than the amplitude approach of FIG. 2, FIG. 4 illustrates a limitation of the envelope approach. Specifically, FIG. 4 includes the same waveform WF₁ (and its envelope ENV₁) of FIGS. 1 and 3, but to make the illustration clear that waveform is shown in a dashed line. Particularly, FIG. 4 also illustrates a second waveform WF₂ intending to depict the echo waveform from a second set of transmitted pulses (i.e., a second PRC). As shown in FIG. 4, therefore, the second waveform WF₂ has a slightly increased amplitude, as compared to the first waveform WF₁. Such a response may be received due to noise or the shape or size of the target. With the increase in amplitude in the second waveform WF₂, then its envelope ENV₂ necessarily increases in value at a faster rate than that of the envelope ENV₁ of the first waveform WF₁. Thus, note in FIG. 4 that the time when the envelope ENV₂ crosses the threshold THR occurs at t_(OF4), which is earlier than the t_(OF2) time that envelope ENV₁ (of waveform WF₁) crossed that threshold. Note that such a change in detected timing, therefore, can create erroneous results in the distance measure of the transducer system. Specifically, even if the target did not move from the time of the first PRC to the time of the second PRC, the system detects a change in TOF (i.e., between t_(OF4) and t_(OF2)), which is thereby interpreted as a change in distance as between the PRCs. Thus, the noise or other cause in the amplitude variations between successive PRCs creates error in the distance measure.

Given the preceding, the preferred embodiments seek to improve upon the prior art, as further detailed below.

BRIEF SUMMARY OF THE INVENTION

In a preferred embodiment, there is a transducer system. The system comprises a transducer and circuitry for applying a pulse train at a single frequency to excite the transducer. The transducer is operable to receive an echo waveform in response to the pulse train. The system also comprises circuitry for determining a time of flight as between a first reference time associated with the pulse train and a second reference time associated with the echo waveform. The circuitry for determining comprises: (i) circuitry for estimating an amplitude waveform envelope for at least a portion of the echo waveform; (ii) circuitry for identifying a first time when the amplitude waveform envelope reaches a threshold; and (iii) circuitry for adjusting the first time to the second reference time, in response to a phase of the echo waveform.

Numerous other inventive aspects are also disclosed and claimed.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING

FIG. 1 illustrates a signal diagram of the operation of a typical prior art ultrasound transducer, in first transmitting a signal and then receiving an echo waveform.

FIG. 2 illustrates a prior art received rectified echo waveform evaluated for when the signal amplitude reaches a threshold.

FIG. 3 illustrates a prior art received echo waveform evaluated for when an envelope of the signal amplitude reaches a threshold.

FIG. 4 illustrates a prior art received echo waveform evaluated for when an envelope of the signal amplitude reaches a threshold, wherein successive instances of the echo waveform have differing envelopes.

FIG. 5 illustrates a block diagram of a transducer 10 according to a preferred embodiment.

FIG. 6 illustrates a flowchart of a method of operation of the system from FIG. 5.

FIG. 7 illustrates a sampled reflected echo waveform according to a preferred embodiment and for which a waveform envelope is evaluated to detect when a threshold is reached.

FIG. 8 illustrates a plot of phase versus time of a linear regression fit for three lines corresponding to respective 2π periods of the waveform of FIG. 7.

FIG. 9 illustrates a functional block diagram to summarize preferred embodiment implementation details.

DETAILED DESCRIPTION OF EMBODIMENTS

FIGS. 1 through 4 were described in the earlier Background of the Invention section of this document and the reader is assumed to be familiar with the principles of that discussion.

FIG. 5 illustrates a block diagram of transducer system 10 according to a preferred embodiment. System 10 includes an ultrasonic transducer 12 that for illustrative purposes is shown having a transmitting T and receiving R element, where those elements may be combined as known in the art. Transducer 12 is constructed of known (e.g., piezoelectric) materials and is operable to transmit ultrasound waves toward a target 14 and receives an echo waveform in response to reflections of the transmitted signal. More specifically, a processor 16 is coupled (e.g., via general purpose input/output GPIO) to an optional voltage booster 18, whereby processor 16 can output a pulse width modulated pulse train that is thereby voltage boosted and applied to the transmitting element T of transducer 12. The voltage boosted and pulsing input signal causes vibrations in the material of the transmitting element T of transducer 12, thereby emitting a typically directional wave signal toward target 14. When an echo waveform is reflected back to the receiving element R of transducer 12, that receiving element R responds with an electrical signal corresponding to the echo waveform. In system 10, the echo waveform is applied to a gain stage 20, which in a preferred embodiment amplifies the signal and also performs an analog-to-digital (ADC) conversion. The resultant digital signal is then connected to processor 16, which samples the digital signal at some desired sampling frequency, f_(s), and processor 16 is further programmed to perform additional processing of the digital samples as detailed in the remainder of this document. Among such processing, processor 16 is able to determine an indication of time of flight (TOF) between the transmitted pulse signal and the received echo waveform (or a reference point in that waveform), thereby representing a distance between transducer 12 and target 14, where that distance may be the desired output from processor 16 or may be further processed in connection with other common transducer applications which process the distance measure further for additional determinations.

FIG. 6 illustrates a flowchart of a method 30 of operation of processor 16 from system 10, as may be implemented with appropriate software instructions stored in or accessible by, and or via hardware/firmware of, processor 16, or any combination thereof Method 30 commences with a step 32, where system 10 transmits an excitation pulse train such as shown in FIG. 1, where for reference the frequency of the pulses is referred to a f_(PT). Thus, in system 10, processor 16 outputs the pulse train via GPIO, and it is optionally boosted by booster 18 and applied to the transmitting element T of transducer 12. In response, ultrasonic waves are directed toward target 14, and an echo waveform, also having a frequency of f_(PT), is reflected back toward the receiving element R of transducer 12. For continuing discussion in this document, FIG. 7 illustrates such a reflected echo waveform WF₃, which as introduced earlier has an increasing amplitude for a period of time after which it will begin to decay. Next, method 30 continues to step 34.

In step 34, processor 16 captures digital values (i.e., samples) of the reflected waveform amplitude into on-chip or off-chip memory, preferably at an integer multiple IM of f_(PT) so that IM samples are captured for each period of transmitted pulse; in one preferred embodiment, IM=4, so the sampling frequency, f_(s), for step 34 is 4*f_(PT). In FIG. 7, therefore, for each 2π period of the generally sine wave shape of waveform WF₃, four circles are shown along each 2π wave period, each intending to illustrate a respective one of four samples captured during that period and per step 34. Note that for each digital captured sample amplitude, also stored is the timing of the sample. Such timing may be determined by a count either of processor clock cycles or by a sequentially incrementing number of samples captured, as knowledge of the number of a sample necessarily can provide the timing of the sample by multiplying the sample number times the sample period, T_(S)=1/f_(S). Next, method 30 continues to step 36.

In step 36, the peak of the received samples is identified as the sample indicating the largest amplitude (i.e., largest absolute value), where a later discussion indicates the determination of amplitude given a sample value. Once the peak is identified, a number of samples within a time window centered about the time of the detected peak are retained (e.g., in memory) for processing. The width of the time window may be selected by one skilled in the art. For example, in one preferred embodiment, the time window equals twice the length of time, T_(W), to transmit the pulses in step 32 (e.g., from t₀ to t₁ in FIG. 1). Next, method 30 continues to step 38.

In step 38, a waveform envelope, shown by way of example in FIG. 7 as envelope ENV₃, is determined from the stored data samples remaining after step 36. As shown graphically in FIG. 7, such an envelope generally represents a relatively smooth curve passing in proximity to the peak amplitude for each 2π period of waveform WF₃. Various techniques may be selected for determining envelope ENV₃, where as detailed later, in a preferred embodiment one method is to filter each sample as real data to provide an imaginary counterpart (e.g., I and Q data, respectively), and then trigonometry is used to determine an approximate sine wave amplitude in response. Further in step 38, in addition to determining the envelope, detection is made of the time (either clock time or sample time) when the envelope ENV₃ crosses a threshold THR, as illustrated in FIG. 7 to occur at a time t_(THR). The value of the threshold THR may be selected by one skilled in the art, such as at ½ the peak amplitude determined in step 36; for sake of illustrative purposes, however, in FIG. 7 the threshold THR is shown larger than ½ of the peak, so as to facilitate the remaining discussing of inventive aspects. Next, method 30 continues to step 40.

In step 40, a linear regression is performed to determine the phase of ±N step 34 (or step 36) samples, where those samples occurred relative to the time when the step 38 peak was determined. In one preferred embodiment N=10, so the phase is determined on 10 samples before t_(THR) and the phase is determined on 10 samples after t_(THR). Various techniques for determining phase also may be selected by one skilled in the art, and as introduced earlier where I and Q data are generated for each sample, then in that instance trigonometry also may be used to determine phase for each sample, as also detailed later. Thus, for each of the N samples, known or determined are its sample time st_(x) and its respective phase θS, which may be represented by a coordinate pair of its sample time and phase thereby creating a sample set with 2N coordinates, as [(st₀, θS₀), (st₁, θS₁), . . . (st_(2N), θS_(2N−1)). In general, for a sinusoid of either fixed or varying amplitude, the wave may be described by the following Equation 1:

amplitude=A sin(θS)=A sin (2π(f)(st)+ø)   Equation 1

where,

A is the peak amplitude,

θS is the phase of a sample,

f is the frequency of the waveform, which here is the same as the frequency, f_(PT), of the originally transmitted pulses;

st is sample time; and

ø is the phase offset (i.e., y-axis intercept).

Note, therefore, that the parenthetical of (2π(f)(st)+ø) in Equation 1 is a line (i.e., typically referred to in geometry as y=mx+b) having slope of m=2πf and a y-intercept of b=ø. In this regard, therefore, and by definition, linear regression will model or fit a line to the phase of the sampled data and matching the parenthetical of Equation 1, depicting the increasing phase, among the 2N (e.g., 20) samples. In this regard, FIG. 8 illustrates a plot of sample phase along the vertical axis and sample time along the horizontal axis, with a first phase line PL_(THR) that results from the above-described linear regression. Thus, from samples shown also in FIG. 8 by way of circles both before and after time t_(THR), line phase line PL_(THR) is best fit to those samples, although to simplify the drawing only six samples are shown, rather than 20. Since phase and time are known for each sample in the set, then this line may be defined and extrapolated as desired, for example to provide the phase offset ø (i.e., y-axis intercept). Note therefore that while a sample may not have occurred at time t_(THR) since that time is detected from an envelope amplitude, rather than a single sample amplitude, exceeding a threshold THR, then the line PL_(THR) thereby estimates phase and timing other than at the finite sample times. Thus, an estimated phase {circumflex over (θ)} can be determined from the line PL_(THR) as of the time t_(THR). In addition, therefore, the line PL_(THR) also indicates phase and timing for other points along the line, as will be useful as further described below. Next, method 30 continues to step 42.

In step 42, processor 16 estimates a time of the zero-phase crossing of waveform WF₃ that corresponds to the ±N data samples closest to time t_(THR). Thus, looking to FIG. 7, where time t_(THR) occurs during a 2π period for waveform WF₃, then step 42 attempts to determine the time t_(ZCTHR) of the zero phase crossing that occurred at the beginning of the 2π period during which t_(THR) occurred. In a preferred embodiment, step 42 is accomplished using the linear regression result from step 40, as is further appreciated with respect to FIG. 8. Specifically, recall that step 42 produced line PL_(THR), a linear fit to phase data of the ±N data samples closest to time t_(THR). As a result, this line extends to and intersects with the 0 radian axis, that is, where the estimated phase {circumflex over (θ)} equals zero. Graphically and computationally, therefore, the zero crossing of the phase axis (i.e., when phase equals 0) may be determined given Equation 1 as modeled by line PL_(THR), namely, by rearranging the parenthetical of Equation 1 as shown in the following Equation 2:

0=(2π(f _(PT))(st)+ø)   Equation 2

Rearranging Equation 2 to solve for the time when the zero crossing occurs gives the following Equation 3:

$\begin{matrix} {\frac{- \varnothing}{2{\pi\left( f_{PT} \right)}} = t_{ZCTHR}} & {{Equation}\mspace{14mu} 3} \end{matrix}$

Given the preceding, note that t_(ZCTHR) provides a reference time relative to waveform WF₃, where that reference relates to phase (i.e., as defined by zero-crossing) of the waveform WF₃, rather than solely to its amplitude. In this manner, therefore, a preferred embodiment may calculate TOF as to this reference time, and thereafter distance is a straightforward relationship to rate (i.e., speed of sound) times TOF. The distance measurement therefore is responsive to a phase-related timing as between successive received echo waveforms, that is, so long as the target 14 is not moving, while the amplitude of successive echo waveforms may vary, the phase as between such successive echo waveforms is typically constant, absent any disturbance or change in the channel between transducer 12 and target 14. Thus, the preferred embodiment, in determining distance based on phase, is more accurate than prior art, amplitude-detecting-only, schemes. Moreover, in the preferred embodiment the echo waveform is efficiently created from a single frequency transmission of a pulse train. Still further, and as detailed below, an additional aspect of a preferred embodiment can incorporate still further considerations so as to reduce the chance of phase (or cycle) slip, further improving the accuracy of the resultant distance measurement, as is accomplished as shown in remaining steps in method 30, which next proceeds to step 44.

It is recognized in connection with a preferred embodiment that cycle slip may occur as between successively-received echo waveforms, that is, an erroneous detection of a single cycle away from the actual cycle in which the threshold is exceeded corresponds to one wavelength in error measurement; for example, for 40 kHz, one wavelength (i.e., λ) is 8.5 mm, so a cycle slip of a single cycle will result in a distance calculation error of 8.5 mm, which is a very large error for high resolution systems. Such an error is more likely to occur in prior art where envelope detectors are used to evaluate the reaching of a threshold. In contrast, therefore, the preferred embodiment, by identifying a zero crossing as revealed by the phase of the echo waveform, can detect changes in distance to the target as low as fractions of the wavelength λ, thereby providing the ability to detect movement down to the 100 um levels, meaning the preferred embodiment can detect very small shifts in target distance, as low as 1/85th of the wavelength, for example. This is traditionally not achievable using envelope methods, since changes in envelope at such small displacements are usually not a very robust indicator, whereas the preferred embodiment can capture such changes by evaluating relative to phase variations, rather than amplitude envelope variations. In this regard, step 44 is directed at reducing the chance for cycle slip, as may occur if t_(THR) was particularly close to the 2π period of the echo waveform immediately before the period in which t_(THR) occurred, or likewise if t_(THR) was particularly close to the 2π period of the echo waveform immediately after the period in which t_(THR) occurred. To mitigate the possibility of cycle slip, step 44 determines two additional zero crossing times, one designated as t_(ZCTHR−) as the zero crossing for the 2π period of the echo waveform immediately before the period in which t_(THR) occurred, and one designated as t_(ZCTHR+) as the zero crossing for the 2π period of the echo waveform immediately after the period in which t_(THR) occurred. In one preferred embodiment, these two additional two zero crossings are readily achievable given line PL_(THR) in FIG. 8, as t_(ZCTHR−) will occur at one period earlier of the echo waveform relative to t_(ZCTHR), and t_(ZCTHR+) will occur at one period later of the echo waveform relative to t_(ZCTHR). Thus, in FIG. 8, a phase line PL_(THR−) is shown having a phase of 2π earlier than line PL_(THR), and a phase line PL_(THR+) is shown having a phase of 2π later than line PL_(THR). Moreover, phase line PL_(THR−) therefore has a respective zero crossing as t_(ZCTHR−), and phase line PL_(THR−) therefore has a respective zero crossing as t_(ZCTHR+). Next, method 30 continues to step 46.

Step 46 determines a final reference time t_(final) to be used as the time reference to determine TOF for the determination of distance between transducer 12 and target 14. Thus, whereas earlier in connection with step 42 it was noted that t_(ZCTHR) may be used for such a time reference, step 46 provides an alternative whereby one of either t_(ZCTHR−), t_(ZCTHR), or t_(ZCTHR+), is selected as that reference time, so as to reduce the chance of cycle slip. In one preferred embodiment, this selection of reference time is as follows.

It is noted that trim is not likely to occur exactly at a time of a sample, so in terms of sample time (i.e., an integer multiple of the time when a sample is taken), then t_(THR) is a fractional value, that is, some non-integer multiple of sample time. Hence, to improve the fractional delay part of t_(THR) toward a final time reference to determine TOF, a preferred embodiment determines the fractional delay portion, t_(THRfrac), of t_(THR), according to the following Equation 4:

t _(THRfrac) =t _(THR)−roun(t _(THR))   Equation 4

Next, the preferred embodiment calculates the time difference between the fractional delays derived from the envelope and phase, so as to improve robustness of the fractional delay computation to mitigate cycle slips due to 2π uncertainty in phase. This sub-step determines if the envelope time crossing at time t_(THR) falls within the same 0 to 2π radians of the waveform WF₃ period when t_(THR) occurred, or if it was closer to the immediately-preceding 2π cycle or to the immediately-following 2π cycle, depending on when the trim crossing happened. Hence, three differential values are determined, as shown in the following Equations 5 through 7:

Δt _(ZCTHR−) =t _(THRfrac) −t _(ZCTHR−)  Equation 5

Δt _(ZCTHR) =t _(THRfrac) −t _(ZCTHR)   Equation 6

Δt _(ZCTHR+) =t _(THRfrac)−t_(ZCTHR+)  Equation 7

Next, the preferred embodiment selects from the results of Equations 5 through 7 the one fractional delay estimate from phase that is closest to the fractional delay estimate from the envelope, as shown in the following Equation 8, selecting the minimum of the absolute values listed therein:

t _(fracfinal)=min[abs(Δt _(ZCTHR−) , Δt _(ZCTHR) , Δt _(ZCTHR+))]  Equation 8

Finally, the preferred embodiment computes the final absolute time reference for use in the TOF determination by correcting the original trim estimate (from when the envelope waveform reached threshold THR) with the newer estimate, as shown in Equation 9:

t _(final) =t _(THR) −t _(fracfinal)   Equation 9

Given the results of Equation 9, step 48 determines the distance from transducer 12 to target 14 using t_(final) as the ultimate timing reference, again in that distance relates to TOF and the speed of sound, as shown in the following Equation 10:

target distance=(t _(final) −t ₀)*c/2   Equation 10

where,

t₀ is the time when the pulse train began transmission (see FIG. 1); and

c is the speed of sound. Note also that the calculation may include some offset from the result of this product because the detected time reference is not the beginning of the echo waveform (t₂ in FIG. 1), where the offset can be removed as a constant bias (i.e., calibration constant). Note also that any other potential cycle slips due to noise can be cleaned up by using a 3/N-tap median filter at the cost of latency, as the application demands.

FIG. 9 illustrates a functional block diagram to summarize various of the above teachings and to complete various additional detail as to certain preferred embodiment implementation details. In general, therefore, FIG. 9 again illustrates, from FIG. 5, transducer 12 and the receiver portion communicating a signal to gain stage 20, where recall the signal is amplified and converted from analog to digital and connected to processor 16. In FIG. 9, processor 16 is shown in dashed outline, so as to further illustrate various computational functions that may be implemented by software programming and/or hardware on processor 16, either alone or in conjunction with other devices communicating with processor 16.

Turning to the functionality achieved in processor 16 so as to perform method 30 of FIG. 6, a digital bandpass filter 50 processes the received signal so as to eliminate noise beyond certain frequencies, based on the expected operating frequency bandwidth of transducer 12. For example, bandpass filter 50 may filter the signal so as to pass the pulse waveform frequency f_(PT)±2 kHz. The filtered signal therefore provides a real component, which is treated as the I data of the eventual I/Q data pair. This real data, I, is coupled to a Hilbert filter 52 (or other discrete Fourier transformation) to convert the real signal to I/Q data, that is, to provide the Q data counterpart. Both the I data (from bandpass filter 50) and the Q data (from Hilbert filter 52) are connected to an amplitude determination block 54 and a phase angle detection block 56. For each sample (I,Q), amplitude determination block 54 determines the amplitude A (in Equation 1) given an understanding of phase vectors in the complex plane, whereby the Pythagoras equation shown in FIG. 9 determines the wave amplitude as the hypotenuse length given the sampled size of I and Q. Note, therefore, that this amplitude provides a measure of envelope ENV₃ in FIG. 7, as the amplitude rises with the increase of the sine wave amplitude (and likewise later decays). Thus, this amplitude is connected as one input to a comparator 58, which compares that amplitude to its second input, the threshold THR value, so as to achieve step 38 in FIG. 6. At the same time, also for each sample (I,Q), phase angle detection block 56 determines the momentary phase θ (in Equation 1) based on the arctangent of Q relative to I. Thus, for each sample (I,Q), the sample time st_(x) of the sample is known and the respective momentary phase θ_(x) is determined, thereby providing the above discussed sample set with 2N coordinates, as [(st₀, θS₀), (st₁, θS₁), . . . (st_(2N), θS_(2N−1)). With this information, the remaining steps 40 through 46 of FIG. 6 may be accomplished by a TOF estimator 60, from which a distance determination may be concluded per step 48 of FIG. 6.

From the above, the preferred embodiments are shown to provide a an improved ultrasonic transducer system and method for ultrasound time of flight (TOF) measurement and the resultant distance determination therefrom. The preferred embodiments have been shown in a favorable implementation with respect to distance detection, but note numerous aspects may apply to other systems that render additional processing from the TOF information. In view of the above, therefore, while various alternatives have been provided according to the disclosed embodiments, still others are contemplated and yet others can be ascertained by one skilled in the art. Given the preceding, therefore, one skilled in the art should further appreciate that while some embodiments have been described in detail, various substitutions, modifications or alterations can be made to the descriptions set forth above without departing from the inventive scope, as is defined by the following claims. 

1. A method comprising: receiving a set of samples associated with an echo waveform; determining an amplitude envelope of the echo waveform using the set of samples; determining a threshold crossing time based on the amplitude envelope crossing a threshold; identifying a subset of the set of samples proximate in time to the threshold crossing time; determining a phase of each sample in the subset; performing a line fit on the phases of the samples in the subset to determine a zero phase time of the echo waveform proximate to the threshold crossing time; and determining a time of flight associated with the echo waveform using the zero phase time proximate to the threshold crossing time.
 2. The method of claim 1, wherein the determining of the zero phase time proximate to the threshold crossing time includes determining whether the threshold crossing time is closer to: a first zero phase crossing time in a same cycle as the threshold crossing time, a second zero phase crossing time in a cycle prior to the threshold crossing time, or a third zero phase crossing time in a cycle after the threshold crossing time.
 3. The method of claim 1 further comprising determining a fractional portion of the threshold crossing time based on a difference between the threshold crossing time and a time of a nearest sample of the set of samples, wherein the determining of the zero phase time proximate to the threshold crossing time includes determining, based on the fractional portion of the threshold crossing time, whether the threshold crossing time is closer to: a first zero phase crossing time in a same cycle as the threshold crossing time, a second zero phase crossing time in a cycle prior to the threshold crossing time, or a third zero phase crossing time in a cycle after the threshold crossing time.
 4. The method of claim 1, wherein the time of flight is between a first reference time associated with a set of pulses used to excite a transducer and the zero phase time.
 5. The method of claim 4, wherein the first reference time is a time of a first pulse transition in the set of pulses.
 6. The method of claim 4 further comprising providing the set of pulses to the transducer.
 7. The method of claim 1 further comprising converting each sample of the set of samples into an (I,Q) sample pair, wherein the determining of the amplitude envelope of the echo waveform is based a square root of a square of the respective (I,Q) sample pair of each sample in the set of samples.
 8. The method of claim 1 further comprising converting each sample of the set of samples into an (I,Q) sample pair, wherein the determining of the phase of each sample in the subset is based on the respective (I,Q) sample pair.
 9. The method of claim 1, wherein: the echo waveform is associated with a target; and the method further includes determining a distance between a transducer and the target based on the time of flight.
 10. A system comprising: an analog-to-digital converter configured to receive an electrical signal associated with an echo waveform and to produce a set of samples associated with the echo waveform in response to the electrical signal; and a processor coupled to the analog-to-digital converter and configured to: receive the set of samples from the analog-to-digital converter; determine an amplitude envelope based on the set of samples; determine a threshold crossing time for the amplitude envelope; identify a subset of the set of samples proximate in time to the threshold crossing time; determine a phase of each sample in the subset; perform a line fit on the phases of the samples in the subset to determine a zero phase time of the echo waveform proximate to the threshold crossing time; and determine a time of flight associated with the echo waveform using the zero phase time proximate to the threshold crossing time.
 11. The system of claim 10, wherein the processor is configured to determine the zero phase time proximate to the threshold crossing time by determining whether the threshold crossing time is closer to: a first zero phase crossing time in a same cycle as the threshold crossing time, a second zero phase crossing time in a cycle prior to the threshold crossing time, or a third zero phase crossing time in a cycle after the threshold crossing time.
 12. The system of claim 10, wherein the processor is configured to determine the zero phase time proximate to the threshold crossing time by: determining a fractional portion of the threshold crossing time based on a difference between the threshold crossing time and a time of a nearest sample of the set of samples; and determining, based on the fractional portion of the threshold crossing time, whether the threshold crossing time is closer to: a first zero phase crossing time in a same cycle as the threshold crossing time, a second zero phase crossing time in a cycle prior to the threshold crossing time, or a third zero phase crossing time in a cycle after the threshold crossing time.
 13. The system of claim 10, wherein the time of flight is between a first reference time associated with a set of pulses used to excite a transducer and the zero phase time.
 14. The system of claim 13, wherein the first reference time is a time of a first pulse transition in the set of pulses.
 15. The system of claim 13 further comprising a transceiver that includes: the transducer coupled to the processor, wherein the processor is configured to provide the set of pulses to the transducer; and a receiver coupled to the analog-to-digital converter to provide the electrical signal.
 16. The system of claim 10, wherein the processor includes: a bandpass filter coupled to the analog-to-digital converter and configured to: receive the set of samples; and provide, for each sample of the set of samples, an in-phase component of an (I,Q) sample pair; and a Herbert filter coupled to the bandpass filter and configured to provide for each sample of the set of samples, quadrature component of the (I,Q) sample pair; and an amplitude detection block coupled to the bandpass filter and to the Herbert filter and configured to determine the amplitude envelope based on the (I,Q) sample pairs of the set of samples.
 17. The system of claim 10, wherein the processor includes: a bandpass filter coupled to the analog-to-digital converter and configured to: receive the set of samples; and provide, for each sample of the set of samples, an in-phase component of an (I,Q) sample pair; a Herbert filter coupled to the bandpass filter and configured to provide for each sample of the set of samples, quadrature component of the (I,Q) sample pair; and a phase angle detection block coupled to the bandpass filter and to the Herbert filter and configured to determine the phase of each sample in the subset based on the respective (I,Q) sample pair.
 18. The system of claim 10, wherein: the echo waveform is associated with a target; and the processor is configured to determine a distance between a transducer and the target based on the time of flight. 